# -*- coding: utf-8 -*-
__author__ = 'lztkdr'
__date__ = '2020/3/29 17:30'

from matplotlib import pyplot as plt
import random

x = range(0, 120)
y = [random.randint(20, 35) for i in range(120)]

print(y)

plt.figure(figsize=(50, 8), dpi=80)

plt.plot(x, y)


# ==========================================================================

# 不支持中文会提示：RuntimeWarning: Glyph 28857 missing from current font.  font.set_text(s, 0.0, flags=flags)

# 解决方式1：
# plt.rcParams['font.sans-serif']=['SimHei'] #显示中文标签

#如果要显示中文标题和坐标表示，需要添加以下两行代码
plt.rcParams['font.sans-serif'] = ['SimHei']
plt.rcParams['axes.unicode_minus'] = False



# 解决方式2：
from matplotlib import font_manager
my_font = font_manager.FontProperties(fname="C:\\Windows\\Fonts\\msyh.ttc")
# 指定 要使用的字体
# plt.xticks(x, x_tick_labels, rotation=45,fontproperties = my_font)
# plt.xlabel("时间",fontproperties = my_font)
# plt.ylabel("温度 单位(℃)",fontproperties = my_font)
# plt.title("10点到12点每分钟的气温变化情况",fontproperties = my_font)
# ==========================================================================


_x = list(x)
_tick_labels = ["10点{}分".format(i) for i in range(60)]
_tick_labels += ["11点{}分".format(i) for i in range(60)]
# 数值型数据 与 label 型数据 相对应 传入、
# rotation 旋转度数（为了让文字不重叠覆盖）
# start:stop:step => ::3
plt.xticks(_x[::3], _tick_labels[::3], rotation=45)

plt.xlabel("时间")
plt.ylabel("温度 单位(℃)")
plt.title("10点到12点每分钟的气温变化情况")

plt.show()
